Filtering

As in the Symbol Browser and the Project Editor, there are also a number of Filter drop-downs. Pressing the Filters... button opens a Filters dialog where you can choose any combination of filters.
Visibility
When the tool opens, you see all the members of

Browser , this is because the default selection in the Visibility drop-down (above the Overridden check box) is All.
You might be interested in all symbols that Browser has access to:

Right-click in the Inheritance Tree at the bottom of the tool, and choose
Context menu > Select From All Classes.
The Member List shows a list of all the members of all the classes in the inheritance tree as seen by

Browser . That is, all the members of Browser itself, as well as the public and protected members of Browser 's base classes. Private members in base classes are grayed because these are not visible from Browser . To hide these completely:
Press the Filters... button.
In the Filters dialog, select the Visibility tab.
In the Visibility tab, clear the invisible private check box.
Press Apply.
You now see only those symbols that are accessible from Browser .
Overloading
You might be interested in all overloaded methods in the hierarchy.

In the Modifiers drop-down, which is set to All Modifiers by default, select overloaded.
Assuming that all the classes are still checkmarked, you see all overloaded methods in the Members List of

Browser .
Enable the Signature check box in the status line.
The signature of each member is also listed, and you can see the parameter lists.
Overriding

You may need to know which methods override and/or are overridden by other methods. For this kind of information:

From the Modifier drop-down, choose override.
Make sure the Overridden check box is selected.
Clear the Signature check box in the status line.
You now see all the members that override methods defined in a base class, as well as all the methods that are overridden in derived classes.
Look at the

addNotify method at the top of the Member List, you can see that it is overridden 3 times, giving a total of 4 implementations.
Marking classes where methods are overridden
You can see by the icon in the Class Browser's Member List that the initial implementation of addNotify is in Component , so this is your starting point.
To visualize the relationships:

In the Class Browser's Member List, highlight the

addNotify method implemented in the class Component .
Choose Class > Mark Relatives Defining addNotify.
The Hierarchy Browser opens and is focussed on Component .
In the Hierarchy Browser

- From the Inheritance drop-down, choose class inheritance to see only class inheritance.
The classes implementing

addNotify are indicated in bold typeface. We have ringed the classes where addNotify is defined/overridden in Browser 's chain of inheritance (you know this from the Class Browser).
You can also see clearly which classes override which implementation of addNotify .

Review
In this chapter you

- used visibility filters.
- looked at overloaded methods.
- visualized overriding/overridden methods in a class hierarchy.